#include "uart.c"
#include "timer.c"
#include <regx52.h>

/**
 * 实现一个按键，每次点击按键随机点亮0~7位置的其中一个灯
 */
// 定义按钮
sbit BTN = P3 ^ 0;

void main()
{
    unsigned char led_pos;
    
    // 初始化串口和定时器
    uart_init();
    timer0_init();

    // 初始化LED端口为输出
    P2 = 0xFF;  // 初始状态所有LED熄灭
    
    while(1)
    {
        if(BTN == 0)  // 检测到按键按下
        {
            delay_ms(20); 
            if(BTN == 0) 
            {
                // 生成随机位置（0~7）
                led_pos = timer_rand() % 8;
                
                // 点亮对应位置的LED
                P2 = ~(1 << led_pos);
                delay_ms(500);
                P2 = 0xFF;

                while(BTN == 0);
            }
        }
    }
}